#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
class A
{
public:
    bool operator()(vector<int> p1, vector<int> p2)
    {
        // cerr<<p1[0]<<" "<<p1[1]<<endl;
        // cerr<<"------"<<endl;
        if (p1[1] != p2[1]) return p1[1] > p2[1];
        else return p1[0] < p2[0];
    }
};
int main()
{
    int n = 0, k = 0;
    cin >> n >> k;
    vector<vector<int>> ab(n, vector<int>(2, 0));
    for (int i = 0;i < n;i++)
    {
        cin >> ab[i][0];
    }
    for (int i = 0;i < n;i++)
    {
        cin >> ab[i][1];
    }
    sort(ab.begin(), ab.end(), A());
    // for(int i=0;i<n;i++)
    // {
    //     for(int j=0;j<2;j++)
    //     {
    //         cerr<<ab[i][j]<<" ";
    //     }
    //     cerr<<endl;
    // }
    long long acid = 0, sweet = 0;
    for (int i = 0;i < k;i++)
    {
        acid += ab[i][0];
        sweet += ab[i][1];
    }
    cout << acid << " " << sweet << endl;
    return 0;
}